Skip to content

[SDK-386] embedded card improvements#1009

Open
franco-zalamena-iterable wants to merge 7 commits intomasterfrom
SDK-386-embedded-card-image-height
Open

[SDK-386] embedded card improvements#1009
franco-zalamena-iterable wants to merge 7 commits intomasterfrom
SDK-386-embedded-card-image-height

Conversation

@franco-zalamena-iterable
Copy link
Copy Markdown
Contributor

@franco-zalamena-iterable franco-zalamena-iterable commented Mar 31, 2026

🔹 Jira Ticket(s) if any

✏️ Description

Improvements to the Card Embedded View Image
NEW image scale type config option for the embedded view

The Card Embedded view currently has display issues for the buttons, with them showing up with a start padding that made them unaligned. To match the campaign preview we need to check how to deal with this

The image from the card embedded now has an aspect ratio field that can be configured by the new image scale type field

closes #997

Copy link
Copy Markdown
Contributor

@sumeruchat sumeruchat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

• The UI/layout changes look reasonable, but the public IterableEmbeddedViewConfig constructor change introduces a source-compatibility regression for
existing Java consumers of the SDK. That makes the patch incorrect as a library change until compatibility is preserved.

Review comment:

  • [P2] Preserve Java source compatibility for IterableEmbeddedViewConfig — /Users/sumeru.chatterjee/MyProjects/iterable-android-sdk/iterableapi-ui/src/main/
    java/com/iterable/iterableapi/ui/embedded/IterableEmbeddedViewConfig.kt:5-16
    If an app integrates this SDK from Java and already calls new IterableEmbeddedViewConfig(...), this change breaks compilation on upgrade because Kotlin
    default parameters do not create a shorter Java overload. Adding imageScaleType changes the only public constructor from 10 args to 11 args, so every
    existing Java call site now fails until it is updated manually.

Without @jvmoverloads, Java callers must pass all 11 constructor
parameters since Kotlin default values are not visible to Java.
This generates overloaded constructors so Java consumers can
omit trailing parameters with defaults.

Made-with: Cursor
Revert button style from TextButton back to the original filled
MaterialButton to preserve backwards compatibility. The style change
from filled to text-only is a visual breaking change for existing users.

Made-with: Cursor
Resolve CHANGELOG.md conflict by combining both sets of entries.
Updated embedded card fix description to remove the button style
mention since that change was reverted.

Made-with: Cursor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

IterableEmbeddedView doesn't match campaign preview

2 participants